home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-03-06 | 1.5 KB | 31 lines | [TEXT/GEOL] |
- Item 3668583 30-June-88 10:05
-
- From: GOLDSMITH1 Goldsmith, David
-
- To: MACAPP$ MacApp Interest List
-
- Sub: Limits and Architectures
-
- Unfortunately, it is not possible to increase the jump table size to 64K. This
- is because A5 is used to address both the jump table and global variables.
- Positive offsets from A5 are used for the jump table; negative offsets from A5
- are used for globals. Both are limited in size to 32K.
-
- This is a direct consequence of the addressing modes available on the 68000.
- If you want a programming model which will continue to work on the 68000, you
- are limited to using the 16-bit offset+register. The only possible
- alternatives are absolute addressing, which would require extensive code
- patching at segment load time, thus slowing down segment loading, or loading
- the offset into a register to get a 32 bit offset and using the indexed
- addressing mode. This would cause generated code which referenced globals and
- procedures to increase greatly in size as well as slow down.
-
- The design of any computer system entails making many tradeoffs and hard
- decisions. The limits in the Mac runtime architecture are not "arbitrary" but
- are the result of conscious decisions trading off code size, execution speed,
- and the limited number of address registers and addressing modes in the 68000.
-
- Although some of these limits may be lifted in the future, remember that
- nothing comes for free.
-
-